home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / man / cmds.fmt / tcsh.man < prev    next >
Text File  |  1990-10-02  |  50KB  |  1,453 lines

  1.  
  2.  
  3.  
  4. TCSH                      User Commands                      TCSH
  5.  
  6.  
  7.  
  8. NNAAMMEE
  9.      tcsh - C shell with file name completion and command line
  10.      editing
  11.  
  12. SSYYNNOOPPSSIISS
  13.      ttccsshh [ --bbcceeffiinnssttvvVVxxXX ] [ _a_r_g_u_m_e_n_t ... ]
  14.  
  15. DDEESSCCRRIIPPTTIIOONN
  16.      _T_c_s_h is an enhanced version of the Berkeley UNIX C shell _c_s_h
  17.      (_1). It behaves exactly like the C shell, except for the
  18.      added utilities of:
  19.  
  20.        1)  Command line editing using Emacs-style commands.
  21.  
  22.        2)  Visual step up/down through the history list.
  23.  
  24.        3)  Terminal mode sanity checking and resetting.
  25.  
  26.        4)  Interactive command, file name and user name comple-
  27.            tion.
  28.  
  29.        5)  File/directory/user list in the middle of a typed com-
  30.            mand.
  31.  
  32.        6)  Spelling correction of command, file, and user names.
  33.  
  34.        7)  Lookup of command documentation in the middle of a
  35.            typed command.
  36.  
  37.        8)  History saved between logouts.
  38.  
  39.        9)  Automatic logout after long periods of idle time.
  40.  
  41.        10) Automatic execution of a single command prior to
  42.            printing each prompt.
  43.  
  44.        11) Automatic periodic command execution.
  45.  
  46.        12) A new syntax for the prompt, and the ability to set
  47.            the prompt for "while" and "for" loops.
  48.  
  49.        13) Time stamps in the history list.
  50.  
  51.        14) An addition to the syntax of filenames to access
  52.            entries in the directory stack.
  53.  
  54.        15) The ability to watch for logins and logouts by user or
  55.            terminal on the machine.
  56.  
  57.        16) A scheduled event list, which specifies commands which
  58.            are to be executed at given times.
  59.  
  60.  
  61.  
  62.  
  63. Ohio State                 11 Feb 1989                          1
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. TCSH                      User Commands                      TCSH
  71.  
  72.  
  73.  
  74.        17) A new builtin that does a subset of _l_s (_1).
  75.  
  76.        18) An addition to the file expression syntax for a char-
  77.            acter not in a set of characters.
  78.  
  79.        19) New automatically initialized environment variables
  80.            _H_O_S_T and _H_O_S_T_T_Y_P_E.
  81.  
  82.        20) Commands for debugging terminal capabilities.
  83.  
  84.        21) Searching for the visual history mechinism.
  85.  
  86.        22) A new builtin for the which(1) command.
  87.  
  88.        23) Restarting a stopped editor with two keystrokes.
  89.  
  90.        24) Automatic execution of a command when the current
  91.            working directory is changed.
  92.  
  93.        25) Automatic execution of commands on an idle host.
  94.  
  95.      For a description of standard C-shell features, see the _c_s_h
  96.      manual page.
  97.  
  98. 11.. CCOOMMMMAANNDD LLIINNEE EEDDIITTIINNGG
  99.      Commands that the user types in may be edited using the same
  100.      control characters that Gnu Emacs uses.  Arrow and function
  101.      key sequences are also allowed.  _T_c_s_h allows this by setting
  102.      the terminal to `CBREAK' mode and reading the input one
  103.      character at a time.  The following is a list of which con-
  104.      trol characters do what.
  105.  
  106.            EMACS functions
  107.  
  108.            set-mark-command         ^@
  109.            beginning-of-line        ^A
  110.            backward-char            ^B
  111.            tty-sigintr              ^C
  112.            delete-char-or-list      ^D
  113.            end-of-line              ^E
  114.            forward-char             ^F
  115.            backward-delete-char     ^H
  116.            complete-word            ^I
  117.            newline                  ^J
  118.            kill-line                ^K
  119.            clear-screen             ^L
  120.            newline                  ^M
  121.            down-history             ^N
  122.            tty-flush-output         ^O
  123.            up-history               ^P
  124.            tty-start-output         ^Q
  125.            redisplay                ^R
  126.  
  127.  
  128.  
  129. Ohio State                 11 Feb 1989                          2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. TCSH                      User Commands                      TCSH
  137.  
  138.  
  139.  
  140.            tty-stop-output          ^S
  141.            transpose-chars          ^T
  142.            universal-argument       ^U
  143.            quoted-insert            ^V
  144.            kill-region              ^W
  145.            extended-key-prefix      ^X
  146.            yank                     ^Y
  147.            tty-sigtsusp             ^Z
  148.            prefix-meta              ^[
  149.            tty-sigquit              ^\
  150.            tty-dsusp                ^]
  151.            digit                    0 through 9
  152.            self-insert-command      A through Z
  153.            self-insert-command      a through z
  154.            self-insert-command      SPACE ! # $ % & " ' ` * + , - . / \
  155.            self-insert-command      : ; ( ) < > { } [ ] = ? @ ^ _ | ~
  156.            backward-delete-char     ^?
  157.            list-choices             M-^D
  158.            backward-delete-word     M-^H
  159.            complete-word            M-^I
  160.            clear-screen             M-^L
  161.            run-fg-editor            M-^Z
  162.            complete-word            M-^[
  163.            spell-word               M-$
  164.            digit-argument           M-0 through M-9
  165.            which-command            M-?
  166.            backward-word            M-B
  167.            capitalize-word          M-C
  168.            delete-word              M-D
  169.            forward-word             M-F
  170.            run-help                 M-H
  171.            downcase-word            M-L
  172.            history-search-forward   M-N
  173.            function-key-prefix      M-O
  174.            history-search-backward  M-P
  175.            spell-word               M-S
  176.            upcase-word              M-U
  177.            copy-region-as-kill      M-W
  178.            function-key-prefix      M-[
  179.            backward-word            M-b
  180.            capitalize-word          M-c
  181.            delete-word              M-d
  182.            forward-word             M-f
  183.            run-help                 M-h
  184.            downcase-word            M-l
  185.            history-search-forward   M-n
  186.            history-search-backward  M-p
  187.            spell-word               M-s
  188.            upcase-word              M-u
  189.            copy-region-as-kill      M-w
  190.            backward-delete-word     M-^?
  191.  
  192.  
  193.  
  194.  
  195. Ohio State                 11 Feb 1989                          3
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. TCSH                      User Commands                      TCSH
  203.  
  204.  
  205.  
  206.            EMACS Extended mode functions (^X)
  207.  
  208.            exchange-point-and-mark  ^X
  209.  
  210.            VI Insert Mode functions
  211.  
  212.            tty-sigintr              ^C
  213.            list-or-eof              ^D
  214.            backward-delete-char     ^H
  215.            complete-word            ^I
  216.            newline                  ^J
  217.            kill-line                ^K
  218.            clear-screen             ^L
  219.            newline                  ^M
  220.            tty-flush-output         ^O
  221.            tty-start-output         ^Q
  222.            redisplay                ^R
  223.            tty-stop-output          ^S
  224.            backward-kill-line       ^U
  225.            quoted-insert            ^V
  226.            backward-delete-word     ^W
  227.            prefix-meta              ^X
  228.            tty-dsusp                ^Y
  229.            tty-sigtsusp             ^Z
  230.            vi-cmd-mode              ^[  (escape key)
  231.            tty-sigquit              ^\
  232.            backward-delete-char     ^?  (delete key)
  233.            self-insert-command      0 thru 9, A thru Z, a thru z
  234.            self-insert-command      SPACE ! # $ % & " ' ` * + , - . / \
  235.            self-insert-command      : ; ( ) < > { } [ ] = ? @ ^ _ | ~
  236.  
  237.            VI Command Mode functions
  238.  
  239.            beginning-of-line        ^A
  240.            tty-sigintr              ^C
  241.            list-choices             ^D
  242.            end-of-line              ^E
  243.            backward-delete-char     ^H
  244.            complete-word            ^I
  245.            newline                  ^J
  246.            kill-line                ^K
  247.            clear-screen             ^L
  248.            newline                  ^M
  249.            down-history             ^N
  250.            tty-flush-output         ^O
  251.            up-history               ^P
  252.            tty-start-output         ^Q
  253.            redisplay                ^R
  254.            tty-stop-output          ^S
  255.            backward-kill-line       ^U
  256.            backward-delete-word     ^W
  257.            prefix-meta              ^[
  258.  
  259.  
  260.  
  261. Ohio State                 11 Feb 1989                          4
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. TCSH                      User Commands                      TCSH
  269.  
  270.  
  271.  
  272.            tty-sigquit              ^\
  273.            forward-char             SPACE
  274.            end-of-line              $
  275.            vi-zero                  0
  276.            digit-argument           1 through 9
  277.            which-command            ?
  278.            vi-add-at-eol            A
  279.            backward-word            B
  280.            vi-chg-to-eol            C
  281.            kill-line                D
  282.            vi-insert-at-bol         I
  283.            history-search-forward   J
  284.            history-search-backward  K
  285.            function-key-prefix      O
  286.            vi-replace-mode          R
  287.            vi-substitute-line       S
  288.            forward-word             W
  289.            backward-delete-char     X
  290.            function-key-prefix      [
  291.            beginning-of-line        ^
  292.            vi-add                   a
  293.            backward-word            b
  294.            delete-word              d
  295.            backward-char            h
  296.            vi-insert                i
  297.            down-history             j
  298.            up-history               k
  299.            forward-char             l
  300.            vi-replace-char          r
  301.            vi-substitute-char       s
  302.            vi-beginning-of-next-word w
  303.            delete-char              x
  304.            backward-delete-char     ^?   (delete key)
  305.            run-help                 M-?
  306.            function-key-prefix      M-O
  307.            function-key-prefix      M-[
  308.  
  309.            Alphabetical list of function names
  310.  
  311.            "backward-char"
  312.            "backward-delete-char"
  313.            "backward-delete-word"
  314.            "backward-kill-line"
  315.            "backward-word"
  316.            "beginning-of-line"
  317.            "capitalize-word"
  318.            "clear-screen"
  319.            "complete-word"
  320.            "copy-region-as-kill"
  321.            "delete-char"
  322.            "delete-char-or-list"
  323.            "delete-word"
  324.  
  325.  
  326.  
  327. Ohio State                 11 Feb 1989                          5
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. TCSH                      User Commands                      TCSH
  335.  
  336.  
  337.  
  338.            "digit"
  339.            "digit-argument"
  340.            "down-history"
  341.            "downcase-word"
  342.            "end-of-file"
  343.            "end-of-line"
  344.            "exchange-point-and-mark"
  345.            "extended-key-prefix"
  346.            "forward-char"
  347.            "forward-word"
  348.            "function-key-prefix"
  349.            "gosmacs-transpose-chars"
  350.            "history-search-backward"
  351.            "history-search-forward"
  352.            "insert-last-word"
  353.            "keyboard-quit"
  354.            "kill-line"
  355.            "kill-region"
  356.            "kill-whole-line"
  357.            "list-choices"
  358.            "list-or-eof"
  359.            "newline"
  360.            "prefix-meta"
  361.            "quoted-insert"
  362.            "redisplay"
  363.            "run-fg-editor"
  364.            "run-help"
  365.            "self-insert-command"
  366.            "set-mark-command"
  367.            "spell-word"
  368.            "transpose-chars"
  369.            "tty-dsusp"
  370.            "tty-flush-output"
  371.            "tty-sigintr"
  372.            "tty-sigquit"
  373.            "tty-sigtsusp"
  374.            "tty-start-output"
  375.            "tty-stop-output"
  376.            "universal-argument"
  377.            "up-history"
  378.            "upcase-word"
  379.            "vi-beginning-of-next-word"
  380.            "vi-cmd-mode"
  381.            "vi-add"
  382.            "vi-add-at-eol"
  383.            "vi-insert"
  384.            "vi-insert-at-bol"
  385.            "vi-replace-char"
  386.            "vi-replace-mode"
  387.            "vi-substitute-char"
  388.            "vi-substitute-line"
  389.            "vi-zero"
  390.  
  391.  
  392.  
  393. Ohio State                 11 Feb 1989                          6
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. TCSH                      User Commands                      TCSH
  401.  
  402.  
  403.  
  404.            "which-command"
  405.            "yank"
  406.  
  407.      There is a new shell command, _b_i_n_d, that allows the user to
  408.      redefine what any key does, or find out what any or all of
  409.      the keys do.
  410.  
  411.      If given two arguments _b_i_n_d binds the function (first argu-
  412.      ment) to the given key (second argument).  The key may be:
  413.      the direct character or a caret-<letter> combination, which
  414.      is converted to control-<letter>; M-<letter> for an escaped
  415.      character; or X-<string> for a function key.  For the last
  416.      of these, the function key prefix must be bound to the func-
  417.      tion "extended-key-prefix" and the string specified to the
  418.      _b_i_n_d command must not include this prefix.  By default (in
  419.      both emacs and vi modes), "extended-key-prefix" is bound to
  420.      M-[ and M-O (capital-oh) for the arrow keys and F1 through
  421.      F20 function keys on ANSI terminals.
  422.  
  423.      If given one argument _b_i_n_d takes the argument as the name
  424.      for a key and tells what that key does.
  425.  
  426.      If given no arguments _b_i_n_d tells what all of the keys do.
  427.      If you give bind the single argument of 'defaults', it
  428.      resets each key to its default value (see the above list).
  429.  
  430. 22.. VVIISSUUAALL HHIISSTTOORRYY
  431.      The keys ^P and ^N are used to step up and down the history
  432.      list.  If the user has typed in the following:
  433.  
  434.            > ls
  435.            foo  bar
  436.            > echo mumble
  437.            mumble
  438.            >
  439.  
  440.      then enters ^_P, the shell will place "echo mumble" into the
  441.      editing buffer, and will put the cursor at the end of the
  442.      line.  If another ^_P is entered, then the editing line will
  443.      change to "ls".  More ^_Ps will make the bell ring, since
  444.      there are no more lines in the history.  ^_N works the same
  445.      way, except it steps down (forward in time).
  446.  
  447.      An easy way to re-do a command is to type ^_P followed by
  448.      _R_e_t_u_r_n. Also, pieces of previous commands can be assembled
  449.      to make a new command.  The commands that work on regions
  450.      are especially useful for this.
  451.  
  452.      ^_P and ^_N actually only copy commands from out of the his-
  453.      tory into the edit buffer; thus the user may step back into
  454.      the history and then edit things, but those changes do not
  455.      affect what is actually in _t_c_s_h's history.
  456.  
  457.  
  458.  
  459. Ohio State                 11 Feb 1989                          7
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466. TCSH                      User Commands                      TCSH
  467.  
  468.  
  469.  
  470. 33.. TTTTYY MMOODDEE SSAANNIITTYY
  471.      As part of the editor, _t_c_s_h does a check and reset of the
  472.      terminal mode bits.  If the speed has been changed, then
  473.      _t_c_s_h will change to using that speed.  _t_c_s_h will also obey
  474.      changes in the padding needed by the tty.  Some changes to
  475.      the command keys will be obeyed, however if a command key is
  476.      unset, _t_c_s_h will reset it to what it was.  Also, the shell
  477.      will automatically turn off RAW and CBREAK modes, and will
  478.      turn on the tty driver's output processing.
  479.  
  480. 44.. WWOORRDD CCOOMMPPLLEETTIIOONN
  481.      In typing commands, it is no longer necessary to type a com-
  482.      plete name, only a unique abbreviation is necessary.  When
  483.      you type a TAB to _t_c_s_h it will complete the name for you,
  484.      echoing the full name on the terminal (and entering it into
  485.      the edit buffer).  If the prefix you typed matches no name,
  486.      the terminal bell is rung, unless the variable _n_o_b_e_e_p is
  487.      set.  The name may be partially completed if the prefix
  488.      matches several longer names.  If this is the case, the name
  489.      is extended up to the point of ambiguity, and the bell is
  490.      rung.  This works for file names, command names, and the
  491.      (csh) ~ user name convention.  The variable _f_i_g_n_o_r_e may be
  492.      set to a list of suffixes to be disregarded during comple-
  493.      tion.
  494.  
  495.      _E_x_a_m_p_l_e
  496.  
  497.      Assume the current directory contained the files:
  498.  
  499.            DSC.TXT   bin       cmd       lib       memos
  500.            DSC.NEW   chaos     cmtest    mail      netnews
  501.            bench     class     dev       mbox      new
  502.  
  503.      The command:
  504.  
  505.            > gnumacs ch[TAB]
  506.  
  507.      would cause _t_c_s_h to complete the command with the file name
  508.      chaos.  If instead, the user had typed:
  509.  
  510.            > gnumacs D[TAB]
  511.  
  512.      _t_c_s_h would have extended the name to DSC and rung the termi-
  513.      nal bell, indicating partial completion. However, if _f_i_g_n_o_r_e
  514.      had previously been set to a list containing .NEW as one
  515.      element, e.g. ( .o .NEW ), _t_c_s_h would have completed the `D'
  516.      to DSC.TXT.
  517.  
  518.      File name completion works equally well when other direc-
  519.      tories are addressed.  Additionally, _t_c_s_h understands the C
  520.      shell tilde (~) convention for home directories.  Thus,
  521.  
  522.  
  523.  
  524.  
  525. Ohio State                 11 Feb 1989                          8
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532. TCSH                      User Commands                      TCSH
  533.  
  534.  
  535.  
  536.            > cd ~speech/data/fr[TAB]
  537.  
  538.      does what one might expect.  This may also be used to expand
  539.      login names only.  Thus,
  540.  
  541.            > cd ~sy[TAB]
  542.  
  543.      expands to
  544.  
  545.            > cd ~synthesis
  546.  
  547.  
  548.      Command names may also be completed, for example,
  549.  
  550.            > gnum[TAB]
  551.  
  552.      will expand to "gnumacs" (assuming that there are no other
  553.      commands that begin with "gnum").
  554.  
  555.      Completion also works when the cursor is in the middle of
  556.      the line, rather than just the end.  All of the text after
  557.      the cursor will be saved, the completion will work (possibly
  558.      adding to the current name), and then the saved text will be
  559.      restored in place, after the cursor.
  560.  
  561. 55.. LLIISSTTIINNGG OOFF PPOOSSSSIIBBLLEE NNAAMMEESS
  562.      At any point in typing a command, you may request "what
  563.      names are available".  Thus, when you have typed, perhaps:
  564.  
  565.            > cd ~speech/data/fritz/
  566.  
  567.      you may wish to know what files or subdirectories exist (in
  568.      ~speech/data/fritz), without, of course, aborting the com-
  569.      mand you are typing.  Typing the character Control-D (^D),
  570.      will list the names (files, in this case) available.  The
  571.      files are listed in multicolumn format, sorted column-wise.
  572.      Directories are indicated with a trailing `/', executable
  573.      files with a `*', symbolic links with a '@', sockets with a
  574.      '=', and FIFOs (named pipes) with a '<'.  Once printed, the
  575.      command is re-echoed for you to complete.
  576.  
  577.      Additionally, one may want to know which files match a pre-
  578.      fix.  If the user had typed:
  579.  
  580.            > cd ~speech/data/fr[^D]
  581.  
  582.      all files and subdirectories whose prefix was ``fr'' would
  583.      be printed.  Notice that the example before was simply a
  584.      degenerate case of this with a null trailing file name. (The
  585.      null string is a prefix of all strings.) Notice also, that a
  586.      trailing slash is required to pass to a new directory for
  587.      both file name completion and listing.
  588.  
  589.  
  590.  
  591. Ohio State                 11 Feb 1989                          9
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598. TCSH                      User Commands                      TCSH
  599.  
  600.  
  601.  
  602.      The degenerate
  603.  
  604.            > ~[^D]
  605.  
  606.      will print a full list of login names on the current system.
  607.  
  608.      The behavior of the completion can be changed by setting the
  609.      shell variable _r_e_c_e_x_a_c_t. This makes an exact command be
  610.      expanded rather than just ringing the bell.  For example,
  611.      assume the current directory has two subdirectories called
  612.      foo and food, then with _r_e_c_e_x_a_c_t set the following could be
  613.      done:
  614.  
  615.            > cd fo[TAB]
  616.      to ...
  617.            > cd foo[TAB]
  618.      to ...
  619.            > cd foo/
  620.  
  621.      rather than beeping on the second TAB.
  622.  
  623.      For covert operation, the variable _n_o_b_e_e_p, can be set,
  624.      preventing the completion mechanism from actually beeping.
  625.  
  626. CCoommmmaanndd NNaammee RReeccooggnniittiioonn
  627.      Command name recognition and completion works in the same
  628.      manner as file name recognition and completion above.  The
  629.      current value of the environment variable _P_A_T_H is used in
  630.      searching for the command.  For example
  631.  
  632.            > newa[TAB]
  633.  
  634.      might expand to
  635.  
  636.            > newaliases
  637.  
  638.      Also,
  639.  
  640.            > new[^D]
  641.  
  642.      would list all commands (along PATH) that begin with "new".
  643.  
  644.      Note that Control-D has three different effects on _t_c_s_h. On
  645.      an empty line (one that contains nothing, not even spaces),
  646.      ^_D sends an EOF to _t_c_s_h just as it does for normal programs.
  647.      When the cursor is in the middle of a line of text, ^_D
  648.      deletes the character that the cursor is under.  Finally, a
  649.      ^_D at the end of a line of text lists the available names at
  650.      that point.  To get a list of available names when the cur-
  651.      sor is in the middle of a line (or on an empty line), a
  652.      Meta-Control-D should be typed (Escape followed by Control-
  653.      D).
  654.  
  655.  
  656.  
  657. Ohio State                 11 Feb 1989                         10
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664. TCSH                      User Commands                      TCSH
  665.  
  666.  
  667.  
  668. 66.. SSPPEELLLLIINNGG CCOORRRREECCTTIIOONN
  669.      If while typing a command, the user mistypes or misspells a
  670.      file name, user name, or command name, _t_c_s_h can correct the
  671.      spelling.  When correcting a file name, each part of the
  672.      path is individually checked and corrected.  The key that
  673.      invokes the corrector is Meta-$ (Escape Dollar-sign).  For
  674.      example, suppose that the user has typed:
  675.  
  676.            > cd /uxr/spol/news[ESC $]
  677.  
  678.      _T_c_s_h will check the path for spelling, correct the mistakes,
  679.      and redraw the line as
  680.  
  681.            > cd /usr/spool/news
  682.  
  683.      leaving the cursor at the end of the line.  This, like the
  684.      other commands that affect names, works for command names
  685.      and user names also.
  686.  
  687. 77.. DDOOCCUUMMEENNTTAATTIIOONN LLOOOOKKUUPP
  688.      The editor function _r_u_n-_h_e_l_p (Meta-h) prints a help file on
  689.      the current command (using the same definition of current as
  690.      the completion routines use).  This help file is found by
  691.      searching the path list HPATH for files of the form
  692.      foo.help, foo.1, foo.8, or foo.6 in that order (assuming
  693.      that the current command is foo).  The file is just printed,
  694.      not paged in any way.  This is because _r_u_n-_h_e_l_p is meant to
  695.      be used to look up short help files, not manual pages
  696.      (although it can do manual pages also).
  697.  
  698. 88.. HHIISSTTOORRYY SSAAVVIINNGG
  699.      _T_c_s_h will save the history list between login sessions.  It
  700.      does this by writing the current list to the file "~/.his-
  701.      tory" on logout, and reading it in on login.  For example,
  702.      placing the line
  703.  
  704.            set history=25 savehist=20
  705.  
  706.      tells csh to save the last 25 commands on the history list,
  707.      and to save the last 20 of them between logins.  The
  708.      "savehist" variable may be set up to the size of history,
  709.      although it is an error to have _s_a_v_e_h_i_s_t larger than _h_i_s_-
  710.      _t_o_r_y.
  711.  
  712. 99.. AAUUTTOOMMAATTIICC LLOOGGOOUUTT
  713.      The automatic logout time is controlled by the variable
  714.      _a_u_t_o_l_o_g_o_u_t, the value of which is the number of minutes of
  715.      inactivity will be allowed before automatically logging the
  716.      user out.  When that many minutes have been reached, the
  717.      shell prints "autologout" and dies (without executing
  718.      ~/.logout).  The default for tcsh is to set _a_u_t_o_l_o_g_o_u_t for
  719.      60 minutes on login shells, and when the user is root.    To
  720.  
  721.  
  722.  
  723. Ohio State                 11 Feb 1989                         11
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. TCSH                      User Commands                      TCSH
  731.  
  732.  
  733.  
  734.      disable autologout (for instance in a window system), unset
  735.      the shell variable _a_u_t_o_l_o_g_o_u_t. (_N_B: autologout is disabled
  736.      by default on sprite.)
  737.  
  738. 1100.. EEXXEECCUUTTIIOONN OOFF AA CCOOMMMMAANNDD PPRRIIOORR TTOO EEAACCHH PPRROOMMPPTT
  739.      _T_c_s_h supports a special alias, _p_r_e_c_m_d, which if set holds a
  740.      command that will be executed before printing each prompt.
  741.      For example, if the user has done
  742.  
  743.            > alias precmd date
  744.  
  745.      then the program _d_a_t_e will be run just before the shell
  746.      prompts for each command.  There are no limitations on what
  747.      precmd can be set to do, although discretion should be used.
  748.  
  749. 1111.. PPEERRIIOODDIICC CCOOMMMMAANNDD EEXXEECCUUTTIIOONN
  750.      _T_c_s_h is now capable of providing periodic command execution
  751.      through the use of the shell variable _t_p_e_r_i_o_d and the alias
  752.      _p_e_r_i_o_d_i_c. When these items are set, the alias _p_e_r_i_o_d_i_c will
  753.      be executed every _t_p_e_r_i_o_d minutes.  This provides a con-
  754.      venient means for checking on common but infrequent changes,
  755.      such as new messages.  Example:
  756.  
  757.            > set tperiod = 30
  758.            > alias periodic checknews
  759.  
  760.      This will cause the _c_h_e_c_k_n_e_w_s(1) program to be run every 30
  761.      minutes.  Having the alias _p_e_r_i_o_d_i_c set but with an unset
  762.      _t_p_e_r_i_o_d (or a value of 0 for _t_p_e_r_i_o_d) will cause _p_e_r_i_o_d_i_c to
  763.      degenerate to another form of _p_r_e_c_m_d.
  764.  
  765. 1122.. NNEEWW PPRROOMMPPTT FFOORRMMAATT
  766.      The format for the _p_r_o_m_p_t shell variable has been changed to
  767.      include many new things, such as the current time of day,
  768.      current working directory, etc..  The new format uses
  769.      "%<char>" to signal an expansion, much like _p_r_i_n_t_f(_3_S). The
  770.      available sequences are:
  771.  
  772.            %d or %/    Current working directory.
  773.            %~          cwd.  If it starts with $HOME, that part is replaced
  774.                        by a ~.
  775.            %c or %.    Trailing component of cwd.
  776.            %h, %!      Current history event number.
  777.            %M          The full machine hostname
  778.            %m          The hostname up to the first "."
  779.            %S (%s)     Start (stop) standout mode.
  780.            %t or %@    Current time of day, in 12-hour, am/pm format (but see
  781.                        the "ampm" shell variable below).
  782.            %T          Current time of day, in 24-hour format.
  783.            %%          A single %.
  784.  
  785.      The sequences for standout are often used to indicate that
  786.  
  787.  
  788.  
  789. Ohio State                 11 Feb 1989                         12
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796. TCSH                      User Commands                      TCSH
  797.  
  798.  
  799.  
  800.      this is an enabled (running as root) shell.  An example:
  801.  
  802.            > set prompt="%m [%h] %S[%@]%s [%/] you rang? "
  803.            tut [37] [_2:_5_4_p_m] [/usr/accts/sys] you rang? _
  804.  
  805.      In addition, there is a new variable, _p_r_o_m_p_t_2, which is used
  806.      to prompt for the body of while and for loops (wherever nor-
  807.      mal _c_s_h prompts with a question mark).  The default for
  808.      _p_r_o_m_p_t_2 is "\? ": a (quoted) question mark followed by a
  809.      space.
  810.  
  811. 1133.. TTIIMMEE--SSTTAAMMPPEEDD HHIISSTTOORRYY LLIISSTT
  812.      The history list in this csh now has a time-of-day stamp
  813.      attached to each history list event.  This time stamp is
  814.      printed whenever the history command is executed.  This
  815.      allows the user to keep track of when the various events
  816.      occurred.  The time stamps are not maintained on the saved
  817.      history list (also available in _t_c_s_h); thus, on logging back
  818.      in, all the saved history events will be recorded with the
  819.      login time as their time stamp.
  820.  
  821. 1144.. DDIIRREECCTTOORRYY SSTTAACCKK EELLEEMMEENNTT AACCCCEESSSS
  822.      _T_c_s_h will now allow the user to access all elements in the
  823.      directory stack directly.  The syntax "=<digit>" is recog-
  824.      nized by tcsh as indicating a particular directory in the
  825.      stack.  (This works for the file/command name recognition as
  826.      well.) This syntax is analogous to the ~ syntax for access
  827.      to users' home directories.  The stack is viewed as zero-
  828.      based, i.e., =0 is the same as $cwd, which is the same as
  829.      ".".  As a special case, the string "=-" is recognized as
  830.      indicating the last directory in the stack.  Thus,
  831.  
  832.            > dirs
  833.            /usr/net/bin /usr/spool/uucp /usr/accts/sys
  834.            > echo =2
  835.            /usr/accts/sys
  836.            > ls -l =1/LOGFILE
  837.            -rw-r--r-- 1 uucp   2594 Jan 19 09:09 /usr/spool/uucp/LOGFILE
  838.            > echo =-/.cs*
  839.            /usr/accts/sys/.cshrc
  840.            > echo =4
  841.            Not that many dir stack entries.
  842.            >
  843.  
  844.      Tcsh will complain if you ask for a directory stack item
  845.      which does not exist.
  846.  
  847.      In the normal csh, saying "pushd +2" would rotate the entire
  848.      stack around through 2 stack elements, placing the entry
  849.      found there at the top of the stack.  If, however, the new
  850.      shell variable _d_e_x_t_r_a_c_t is set, then issuing "pushd +n" will
  851.      cause the nth directory stack element to be extracted from
  852.  
  853.  
  854.  
  855. Ohio State                 11 Feb 1989                         13
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862. TCSH                      User Commands                      TCSH
  863.  
  864.  
  865.  
  866.      its current position, which will then be pushed onto the top
  867.      of the stack.  Example:
  868.  
  869.            > dirs
  870.            ~ /usr/spool/uucp /usr/net/bin /sys/src
  871.            > set dextract
  872.            > pushd +2
  873.            /usr/net/bin ~ /usr/spool/uucp /sys/src
  874.            > unset dextract
  875.            > pushd +2
  876.            /usr/spool/uucp /sys/src /usr/net/bin ~
  877.  
  878. 1155.. WWAATTCCHHIINNGG FFOORR LLOOGGIINNSS AANNDD LLOOGGOOUUTTSS
  879.      _T_c_s_h has a mechanism so that the user can watch for login
  880.      and logout activity of any user or terminal in the system.
  881.      This is accomplished using the new special shell variable
  882.      _w_a_t_c_h, which contains login/terminal name pairs to be
  883.      checked for activity.  For example:
  884.  
  885.            > set watch=(sys ttyjd root console)
  886.  
  887.      This setting will allow the user to check on when the user
  888.      "sys" logs in on /dev/ttyjd.  Similarly, it will inform the
  889.      user of root's activity on the console.  In order to be more
  890.      general, the word "any" may be substituted for either a
  891.      user's or a terminal's name, thus allowing
  892.  
  893.            > set watch=(brad any any ttyh0)
  894.  
  895.      which will check for user "brad" logging in or out of the
  896.      system on any terminal, as well as anyone logging in to
  897.      /dev/ttyh0.  Naturally, the completely general case
  898.  
  899.            > set watch=(any any)
  900.  
  901.      allows the user to check on any and all login/logout
  902.      activity in the the system.
  903.  
  904.      By default, the interval between checks of users on the sys-
  905.      tem is 10 minutes; this can be changed by making the first
  906.      element of _w_a_t_c_h a number of minutes which should be used
  907.      instead, as in
  908.  
  909.            > set watch=(40 any any)
  910.  
  911.      which will check for any users logging in or out every 40
  912.      minutes.
  913.  
  914.      There is also a new command, _l_o_g, which is used to cause csh
  915.      to inform the user of all users/terminals affected by _w_a_t_c_h
  916.      whether they have been announced before or not.  This is
  917.      useful if a user has been on for some time and cannot
  918.  
  919.  
  920.  
  921. Ohio State                 11 Feb 1989                         14
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928. TCSH                      User Commands                      TCSH
  929.  
  930.  
  931.  
  932.      remember if a particular person/terminal is online right now
  933.      or not.  _L_o_g will reset all indication of previous announce-
  934.      ment and give the user the login list all over again, as
  935.      well as printing the current value of _w_a_t_c_h.
  936.  
  937.      The first time that _w_a_t_c_h is set at csh startup, all
  938.      affected users and terminals will be printed as though those
  939.      users/terminals had just logged on.  This may appear to be a
  940.      bug, but is generally considered a feature, since it allows
  941.      the user to see who is on when he first logs in.
  942.  
  943. 1166.. TTIIMMEEDD EEVVEENNTT LLIISSTT
  944.      _T_c_s_h now supports a scheduled-event list through the use of
  945.      the command _s_c_h_e_d. This command gives the user a mechanism
  946.      by which to arrange for other commands to be executed at
  947.      given times.  An event is added to the scheduled-event list
  948.      by saying
  949.  
  950.            > sched [+]hh:mm <command>
  951.  
  952.      as in
  953.  
  954.            > sched 11:00 echo It\'s eleven o\'clock.
  955.  
  956.      This will make an entry in the list at 11am for the echo
  957.      command to be run with the given arguments.  The time may be
  958.      specified in either absolute or relative time, and absolute
  959.      times may have a morning/afternoon specification as well,
  960.      using "am" or "pm." For example,
  961.  
  962.            > sched +2:15 /usr/lib/uucp/uucico -r1 -sother
  963.            > sched 5pm set prompt='[%h] It\'s after 5; go home: >'
  964.            > sched +3am echo This syntax doesn\'t work.
  965.            Relative time inconsistent with am/pm.
  966.            >
  967.  
  968.      Note that tcsh will complain if you try to make faulty time
  969.      specifications.
  970.  
  971.      Printing the current time-event list is accomplished by giv-
  972.      ing the _s_c_h_e_d command with no arguments:
  973.  
  974.            > sched
  975.                 1  Wed Apr  4 15:42  /usr/lib/uucp/uucico -r1 -sother
  976.                 2  Wed Apr  4 17:00  set prompt=[%h] It's after 5; go home: >
  977.            >
  978.  
  979.      There is also a mechanism by which the user can remove an
  980.      item from the list:
  981.  
  982.            > sched --3
  983.            Usage for delete: sched -<item#>.
  984.  
  985.  
  986.  
  987. Ohio State                 11 Feb 1989                         15
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994. TCSH                      User Commands                      TCSH
  995.  
  996.  
  997.  
  998.            > sched -3
  999.            Not that many scheduled events.
  1000.            > sched -2
  1001.            > sched
  1002.                 1  Wed Apr  4 15:42  /usr/lib/uucp/uucico -r1 -sother
  1003.            >
  1004.  
  1005.      All commands specified on the scheduled-event list will be
  1006.      executed just prior to printing the first prompt immediately
  1007.      following the time when the command is to be run.  Hence, it
  1008.      is possible to miss the exact time when the command is to be
  1009.      run, but tcsh will definitely get around to all commands
  1010.      which are overdue at its next prompt.  Scheduled-event list
  1011.      items which come due while tcsh is waiting for user input
  1012.      will be executed immediately.  In no case, however, will
  1013.      normal operation of already-running commands be interrupted
  1014.      so that a scheduled-event list element may be run.
  1015.  
  1016.      This mechanism is similar to, but not the same as, the _a_t(1)
  1017.      command on some Unix systems.  Its major disadvantage is
  1018.      that it does not necessarily run a command at exactly the
  1019.      specified time (but only if another command is already being
  1020.      run).  Its major advantage is that commands which run
  1021.      directly from the csh, as sched commands are, have access to
  1022.      shell variables and other structures.  This provides a
  1023.      mechanism for changing one's working environment based on
  1024.      the time of day.
  1025.  
  1026. 1177.. BBUUIILLTTIINN FFOORR llss --FF
  1027.      There is a new builtin command called _l_s-_F which does the
  1028.      same thing as the command "ls -aF" if the shell variable
  1029.      _s_h_o_w_d_o_t_s has been set, and acts like "ls -F" otherwise.
  1030.  
  1031. 1188.. CCHHAARR IINN RRAANNGGEE SSYYNNTTAAXX CCHHAANNGGEE
  1032.      The syntax for any character in a range (for example ".[a-
  1033.      z]*") has been extended so as to conform with standard Unix
  1034.      regular expression syntax (see _e_d(1)).  Specifically, after
  1035.      an open bracket ("["), if the first character is a caret
  1036.      ("^") then the character matched will be any not in the
  1037.      range specified.  For example:
  1038.  
  1039.            > cd ~
  1040.            > echo .[a-z]*
  1041.            > echo .[^.]*
  1042.            >
  1043.  
  1044.      Note that the second form includes .Xdefaults and .Xinit
  1045.      because 'X' (and all the lower case letters) are outside of
  1046.      the range of a single '.'.
  1047.  
  1048. 1199.. NNEEWW EENNVVIIRROONNMMEENNTT AANNDD SSHHEELLLL VVAARRIIAABBLLEESS
  1049.      On startup, _t_c_s_h now automatically initializes the
  1050.  
  1051.  
  1052.  
  1053. Ohio State                 11 Feb 1989                         16
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060. TCSH                      User Commands                      TCSH
  1061.  
  1062.  
  1063.  
  1064.      environment variable _H_O_S_T to the name of the machine that it
  1065.      is running on.  It does this by doing a _g_e_t_h_o_s_t_n_a_m_e(_2) sys-
  1066.      tem call, and setting _H_O_S_T to the result.
  1067.  
  1068.      _T_c_s_h also initializes the environment variable _H_O_S_T_T_Y_P_E to a
  1069.      symbolic name for the type of computer that it is running
  1070.      on.  The current possible values are:
  1071.  
  1072.      _a_l_l_i_a_n_t        an Alliant FX series
  1073.      _a_t_t_3_b_2         an AT&T 3b2
  1074.      _a_t_t_3_b_5         an AT&T 3b5
  1075.      _a_t_t_3_b_1_5        an AT&T 3b15
  1076.      _a_t_t_3_b_2_0        an AT&T 3b15
  1077.      _b_a_l_l_a_n_c_e       a Sequent Ballance (32000 based)
  1078.      _b_u_t_t_e_r_f_l_y_R     _a _B_B_N _C_o_m_p_u_t_e_r _B_u_t_t_e_r_f_l_y _1_0_0_0
  1079.      _c_o_n_v_e_x         a Convex
  1080.      _h_p_9_0_0_0_s_3_0_0     an HP 9000, series 300 workstation
  1081.      _h_p_9_0_0_0_s_8_0_0     an HP 9000, series 800 workstation
  1082.      _h_p             an HP, but not an hp9000s800
  1083.      _m_u_l_t_i_m_a_x       an Encore Computer Corp. Multimax (32000 based)
  1084.      _m_a_c_2           an Apple Computer Macintosh II
  1085.      _p_y_r_a_m_i_d        a Pyramid Technology computer (of any flavor)
  1086.      _r_t             an IBM PC/RT running Mach
  1087.      _r_t_p_c           an IBM PC/RT running IBM's BSD port
  1088.      _s_u_n_2           a Sun Microsystems series 2 workstation (68010 based)
  1089.      _s_u_n_3           a Sun Microsystems series 3 workstation (68020 based)
  1090.      _s_u_n_4           a Sun Microsystems series 4 workstation (SPARC based)
  1091.      _s_u_n_3_8_6_i        a Sun Microsystems 386i workstation (386 based)
  1092.      _s_u_n            a Sun workstation of none of the above types
  1093.      _s_y_m_m_e_t_r_y       a Sequent Symmetry (386 based)
  1094.      _v_a_x            a Digital Equipment Corp. Vax (of any flavor)
  1095.  
  1096.      (The names of the machines are usually trade marks of the
  1097.      corresponding companies.)  This is useful when sharing a
  1098.      single physical directory between several types of machines
  1099.      (running NFS, for instance).  For example, if the following
  1100.      is in ._l_o_g_i_n:
  1101.  
  1102.         set path = (~/bin.$HOSTTYPE /usr/ucb /bin /usr/bin
  1103.         /usr/games .)
  1104.  
  1105.      and the user has directories named "bin._m_a_c_h_i_n_e" (where
  1106.      _m_a_c_h_i_n_e is a name from the above list), then the user can
  1107.      have the same programs compiled for different machines in
  1108.      the appropriate "bin._m_a_c_h_i_n_e" directories and _t_c_s_h will run
  1109.      the binary for the correct machine.
  1110.  
  1111.      _T_c_s_h also initializes the shell variable _u_i_d to the value of
  1112.      the current real user ID.  This is useful for telling what
  1113.      user the shell is running as.
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119. Ohio State                 11 Feb 1989                         17
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126. TCSH                      User Commands                      TCSH
  1127.  
  1128.  
  1129.  
  1130. 2200.. CCOOMMMMAANNDDSS FFOORR DDEEBBUUGGGGIINNGG
  1131.      Only two such commands are available at this point, both
  1132.      concerned with testing termcap entries.
  1133.      _t_e_l_l_t_c tells you, politely, what tcsh thinks of your termi-
  1134.      nal, and _s_e_t_t_c `cap' `value' tells _t_c_s_h to believe that the
  1135.      termcap capability `cap' ( as defined in _t_e_r_m_c_a_p(_5) ) has
  1136.      the value `value'. No checking for sanity is performed, so
  1137.      beware of improper use.
  1138.  
  1139. 2211.. SSEEAARRCCHHIINNGG FFOORR TTHHEE VVIISSUUAALL HHIISSTTOORRYY
  1140.      Two new editor functions have been added: history-search-
  1141.      backward, bound to M-p (and M-P), and history-search-
  1142.      forward, bound to M-n (and M-N).  Each of these search back-
  1143.      ward (or forward) through the history list for previous
  1144.      (next) occurrence of the first word in the input buffer as a
  1145.      command.  That is, if the user types:
  1146.  
  1147.            > echo foo
  1148.            foo
  1149.            > ls
  1150.            filea     fileb
  1151.            > echo bar
  1152.            bar
  1153.            >
  1154.  
  1155.      and then types "echo<ESC>p", the shell will place "echo bar"
  1156.      in the editing buffer.  If another _M-_p was entered, the
  1157.      editing buffer would change to "echo foo".  This capability
  1158.      is compatable with the plain visual history; if the user
  1159.      were to then enter ^_P the editing buffer would be changed to
  1160.      "ls".
  1161.  
  1162. 2222.. BBUUIILLTTIINN WWHHIICCHH((11)) CCOOMMMMAANNDD
  1163.      There is now a builtin version of the _w_h_i_c_h(1) command.  The
  1164.      builtin version is just like the original, except that it
  1165.      correctly reports aliases peculiar to this _t_c_s_h, and builtin
  1166.      commands.  The only other difference is that the builtin
  1167.      runs somewhere between 10 and 100 times faster.
  1168.  
  1169. 2233.. RREESSTTAARRTTIINNGG AA SSTTOOPPPPEEDD EEDDIITTOORR
  1170.      There is another new editor function: run-fg-editor, which
  1171.      is bound to _M-^_Z.  When typed, it saves away the current
  1172.      input buffer, and looks for a stopped job with a name equal
  1173.      to the file name part (last element) of either the EDITOR or
  1174.      VISUAL environment variables (if not defined, the default
  1175.      names are "ed" and "vi" respectively).  If such a job is
  1176.      found, then it is restarted as if "fg %_n_a_m_e" had been typed.
  1177.      This is used to toggle back and forth between an editor and
  1178.      the shell easily.  Some people bind this function to ^_Z so
  1179.      they can do this even more easily.
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185. Ohio State                 11 Feb 1989                         18
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192. TCSH                      User Commands                      TCSH
  1193.  
  1194.  
  1195.  
  1196. 2244.. EEXXEECCUUTTIIOONN OOFF AA CCOOMMMMAANNDD AAFFTTEERR CCHHAANNGGIINNGG TTHHEE CCUURRRREENNTT WWOORRKKIINNGG
  1197.      DDIIRREECCTTOORRYY
  1198.      _T_c_s_h now supports a special alias, _c_w_d_c_m_d, which if set
  1199.      holds a command that will be executed after changing the
  1200.      value of $cwd.  For example, if the user is running on an X
  1201.      window system xterm, and has done
  1202.  
  1203.            > alias cwdcmd 'echo -n "^[]0;"{$HOST}":$cwd^G"'
  1204.            (where the ^[ is an ESC, and the ^G is a control-G.)
  1205.  
  1206.      then the shell will change the title of the running xterm to
  1207.      be the name of the host, a colon, and the full current work-
  1208.      ing directory.  Note that if a user defines _c_w_d_c_m_d to con-
  1209.      tain a _c_d, _p_u_s_h_d, or _p_o_p_d, command, an infinite loop may
  1210.      result.  In this case, it is the author's opinion that said
  1211.      user will get what he deserves.
  1212.  
  1213. 2255.. EEXXEECCUUTTIIOONN OOFF CCOOMMMMAANNDDSS OONN IIDDLLEE HHOOSSTTSS
  1214.      _T_c_s_h on Sprite supports automatic migration of processes for
  1215.      the purpose of load sharing.  This is accomplished using the
  1216.      new special shell variable _p_o_l_i_c_y, which should contain a
  1217.      numeric value between 0 and 4.  A value of 0, the default,
  1218.      indicates that no migration should be performed.  The other
  1219.      values of interest are 2, which indicates that all commands
  1220.      should be migrated except those listed in the user's
  1221.      ~/.export file, or 4, which indicates that commands not in
  1222.      .export should be migrated when placed in the background.
  1223.      The _e_x_p_o_r_t command rehashes the list of entries in .export,
  1224.      and _e_x_p_o_r_t -_p_r_i_n_t lists the entries.  Finally, _e_x_p_o_r_t -_h_e_l_p
  1225.      lists some information about the current status of exporta-
  1226.      tion.
  1227.  
  1228.      Note that not all commands are totally location-independent,
  1229.      and that commands will take up idle hosts that other users
  1230.      might be able to use.  Therefore, run commands remotely only
  1231.      when they are CPU-intensive.  The file
  1232.            /sprite/lib/tcsh/export
  1233.      contains the default .export file.
  1234.  
  1235. FFYYII
  1236.      This shell uses cbreak mode but takes typed-ahead characters
  1237.      anyway.  You can still use _s_t_t_y(1) to set some of the modes
  1238.      of your terminal (but not bindings).
  1239.  
  1240.      This shell will restore your tty to a sane mode if it
  1241.      appears to return from some command in raw, cbreak, or noe-
  1242.      cho mode.
  1243.  
  1244. EENNVVIIRROONNMMEENNTT
  1245.      HPATH -- path to look for command documentation
  1246.      TERM -- used to tell how to handle the terminal
  1247.  
  1248.  
  1249.  
  1250.  
  1251. Ohio State                 11 Feb 1989                         19
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258. TCSH                      User Commands                      TCSH
  1259.  
  1260.  
  1261.  
  1262. NNEEWW SSHHEELLLL VVAARRIIAABBLLEESS
  1263.      autologout -- number of minutes of inactivity before
  1264.      automatic logout
  1265.      dextract -- extract a directory on pushd rather than rotat-
  1266.      ing
  1267.      edit -- use the input editor, set by default
  1268.      fignore -- list of file name suffixes to ignore during com-
  1269.      plete
  1270.      nobeep -- do not beep on non-unique expansion or excess edit
  1271.      printexitvalue -- if an interactive program exits non-zero,
  1272.      print the exit value.
  1273.      prompt -- the string to prompt with
  1274.      prompt2 -- the string to prompt for while and for loops with
  1275.      pushdtohome -- make pushd with no args do a "pushd ~" (like
  1276.      cd does)
  1277.      pushdsilent -- do not print the dir stack on every pushd and
  1278.      popd
  1279.      recexact -- recognize exact matches even if they are ambigu-
  1280.      ous
  1281.      savehist -- number of history items to save between login
  1282.      sessions
  1283.      showdots -- show hidden files in list and complete opera-
  1284.      tions
  1285.      term -- the terminal type; see above
  1286.      tperiod -- periodic command wait period (in min.)
  1287.      uid -- the current real user ID
  1288.      version -- the version ID stamp for this _t_c_s_h
  1289.      watch -- list of events to watch
  1290.      wordchars -- list of nonalphanumeric characters considered
  1291.      part of a word-- defaults to "*?_-.[]~="
  1292.  
  1293. NNEEWW SSPPEECCIIAALL AALLIIAASSEESS
  1294.      periodic -- the command to be run every _t_p_e_r_i_o_d minutes
  1295.      precmd -- the command to be run prior to printing each
  1296.      prompt
  1297.  
  1298. SSEEEE AALLSSOO
  1299.      csh(1), chsh(1), termcap(5)
  1300.  
  1301. BBUUGGSS
  1302.      The screen update for lines longer than the screen width is
  1303.      very poor if the terminal cannot move the cursor up (ie.
  1304.      terminal type "dumb").
  1305.  
  1306.      I am certain that there are bugs.  Bugs (preferably with
  1307.      fixes) should be sent to Paul Placeway (paul@cis.ohio-
  1308.      state.edu)
  1309.  
  1310. AAUUTTHHOORRSS
  1311.      Ken Greer, HP Labs, 1981 Wrote the command completion.
  1312.  
  1313.      Mike Ellis, Fairchild, 1983 Added command name
  1314.  
  1315.  
  1316.  
  1317. Ohio State                 11 Feb 1989                         20
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324. TCSH                      User Commands                      TCSH
  1325.  
  1326.  
  1327.  
  1328.      recognition/completion.
  1329.  
  1330.      Paul Placeway, Ohio State CIS dept., 1983 Added the command
  1331.      line editor.
  1332.  
  1333.      Rayan Zachariassen, University of Toronto, 1984 Added the
  1334.      builtin _w_h_i_c_h feature to the editor, and the code for _l_s-_F .
  1335.      Also numerous bug fixes, modifications, and performance
  1336.      enhancements.
  1337.  
  1338.      Chris Kingsley, Caltech.  Wrote the fast storage allocator
  1339.      routines (nmalloc.c).
  1340.  
  1341.      Karl Kleinpaste, CCI 1983-4 Added special aliases, directory
  1342.      stack extraction stuff, login/logout watch, and scheduled
  1343.      events.  Also came up with the idea of the new prompt for-
  1344.      mat.
  1345.  
  1346.      Paul Placeway, Ohio State CIS dept., 1987 Re-wrote the edi-
  1347.      tor, cleaned up other code, and added the prompt routines,
  1348.      added to the syntax for file name expressions, and sped up
  1349.      the shell some.
  1350.  
  1351.      Chris Grevstad, TRW, 1987 Ported the 4.3 csh sources to
  1352.      tcsh.
  1353.  
  1354.      Christos S. Zoulas, Cornell U. EE dept., 1987-89 ported tcsh
  1355.      to HPUX, and System V rel. 2 and 3 and wrote a SysV version
  1356.      of getwd.c
  1357.  
  1358.      James J Dempsey, BBN, 1988, and Paul Placeway, OSU, 1988.
  1359.      Re-ported tcsh to A/UX
  1360.  
  1361.  
  1362. BBUUGGFFIIXXEESS AANNDD EENNHHAANNCCEEMMEENNTTSS
  1363.      Hans J. Albertsson Added the ampm variable handeling
  1364.  
  1365.      Michael Bloom Fixed some of the interupt handeling
  1366.  
  1367.      Michael Fine, Digital Equipment Corp.  added the extended
  1368.      key support
  1369.  
  1370.      Daniel Long, NNSC, 1988 Added the wordchars variable
  1371.  
  1372.      George Hartzell, MCD Biology, University of Colorado-
  1373.      Boulder, 1988 fixed the allways reseting to DEL bug.
  1374.  
  1375.      Patrick Wolfe, KAI, 1988 Cleaned up VI mode and wrote the
  1376.      new editor discription (in section 1).
  1377.  
  1378.      Jak Kirman, 1988 Fixed the SunOS 4 giant stack allocation
  1379.      bug.
  1380.  
  1381.  
  1382.  
  1383. Ohio State                 11 Feb 1989                         21
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390. TCSH                      User Commands                      TCSH
  1391.  
  1392.  
  1393.  
  1394.      Bruce Robertson, Tektronix, 1989 Fixed setting erase and
  1395.      kill (again).
  1396.  
  1397.  
  1398. TTHHAANNKKSS TTOO
  1399.      A special thanks to: Bryan Dunlap, Clayton Elwell, Karl
  1400.      Kleinpaste, Bob Manson, Steve Romig, Diana Smetters, Bob
  1401.      Sutterfield, Mark Verber, Elizabeth Zwicky, and all the
  1402.      other people at Ohio State for suggestions and encourage-
  1403.      ment.
  1404.  
  1405.      Also, thanks to all the people on the net for putting up
  1406.      with, reporting bugs in, and suggesting new additions to the
  1407.      old tcsh editor.
  1408.  
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420.  
  1421.  
  1422.  
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449. Ohio State                 11 Feb 1989                         22
  1450.  
  1451.  
  1452.  
  1453.